/**
 * @function 得到两个数的商
 */
function div(num1, num2) {
	var d1 = 0, d2 = 0, dou1, dou2;

	try {
		d1 = num1.toString().split(".")[1].length
	} catch (e) {
	}
	try {
		d2 = num2.toString().split(".")[1].length
	} catch (e) {
	}

	dou1 = Number(num1.toString().replace(".", ""));
	dou2 = Number(num2.toString().replace(".", ""));
	return (dou1 / dou2) * Math.pow(10, d2 - d1)
}
// 方便方法的调用
Number.prototype.div = function(num) {
	return div(this, num);
}
/**
 * @function 得到两个数乘积
 */
function accMul(num1, num2) {
	var len = 0, str1 = num1.toString(), str2 = num2.toString();
	try {
		len += str1.split(".")[1].length
	} catch (e) {
	}
	try {
		len += str2.split(".")[1].length
	} catch (e) {
	}
	return Number(str1.replace(".", "")) * Number(str2.replace(".", ""))
			/ Math.pow(10, len);
}
// 方便方法的调用
Number.prototype.accMul = function(num) {
	return accMul(this, num);
}
/**
 * @function 得到两个数的和
 */
function add(num1, num2) {
	var n1, n2, p;
	try {
		n1 = num1.toString().split(".")[1].length
	} catch (e) {
		n1 = 0
	}
	try {
		n2 = num2.toString().split(".")[1].length
	} catch (e) {
		n2 = 0
	}
	p = Math.pow(10, Math.max(n1, n2));
	return (num1 * p + num2 * p) / p;
}
// 方便方法的调用
Number.prototype.add = function(num) {
	return add(this, num);
}
/*
 * @function 得到两个数的差
 */
function minus(num1, num2) {
	var n1, n2, p1, p2;
	try {
		n1 = num1.toString().split(".")[1].length
	} catch (e) {
		n1 = 0
	}
	try {
		n2 = num2.toString().split(".")[1].length
	} catch (e) {
		n2 = 0
	}
	p1 = Math.pow(10, Math.max(n1, n2));
	p2 = (n1 >= n2) ? n1 : n2;
	return ((num1 * p1 - num2 * p1) / p1).toFixed(p2);
}
// 方便方法的调用
Number.prototype.minus = function(num) {
	return minus(this, num);
}

/**
 * @function 重写js的toFixed方法
 */
Number.prototype.toFixed = function(len) {
	var add = 0;
	var s, temp;
	var s1 = this + "";
	var start = s1.indexOf(".");
	if (start!=-1 && s1.substr(start + len + 1, 1) >= 5)
		add = 1;
	var temp = Math.pow(10, len);
	s = Math.floor(accMul(this,temp)) + add;
	return s / temp;
}

/**
 *  格式话金额	
 *	将数字转换成逗号分隔的样式,保留两位小数s:value,n:小数位数 
 */
function fmoney(s, n){
	n = n > 0 && n <= 20 ? n : 2;
	s = parseFloat((s + "").replace(/[^\d\.-]/g, "")).toFixed(n) + "";
	var l = s.split(".")[0].split("").reverse(),
	r = s.split(".")[1];
	if(r==null){
		r = '00';
	}
	t = "";
	for(i = 0; i < l.length; i ++ ){
		t += l[i] + ((i + 1) % 3 == 0 && (i + 1) != l.length ? "," : "");
	}
	return t.split("").reverse().join("") + "." + r;
}
/**
 * 还原金额
 */
function rmoney(s){
	return parseFloat(s.replace(/[^\d\.-]/g, ""));
}
